package com.brillilab.domain.vo.user;

import java.io.Serializable;

/**
 * 身份验证请求参数
 *
 * @author wmh
 */
//(value="身份验证请求参数")
public class UserAuthValidateReq implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 验证类型 1 手机验证，2 邮箱验证，3 登录密码验证，4 数据密码验证
     */
    //(value="验证类型 1 手机验证，2 邮箱验证，3 登录密码验证，4 数据密码验证",required=true)
    private Integer type;
    /**
     * 验证码 type填 1 ，2 时需传入
     */
    //(value="验证码 ype填 1 ，2 时需传入")
    private String validateCode;
    /**
     * 用户密码 type填 3 时需传入
     */
    //(value="用户密码 type填 3 时需传入")
    private String password;
    /**
     * 用户数据密码 type填 4 时需传入
     */
    //(value="用户数据密码 type填 4 时需传入")
    private String securityPwd;

    /**
     * 证件号 默认证件号后六位认证
     */
    private String certificateNo;
    
    public UserAuthValidateReq() {
    }

    /**
     * 验证类型枚举 1 手机验证，2 邮箱验证，3 登录密码验证，4 数据密码验证
     */
    public enum Type{

        MOBILE("手机验证",1),EMAIL("邮箱验证",2),PASSWORD("登录密码验证",3),SECURITY_PWD("数据密码验证",4);

        Type(String name,Integer code) {
            this.name=name;
            this.code=code;
        }

        private String name;
        private Integer code;

        public String getName() {
            return name;
        }

        public Integer getCode() {
            return code;
        }
    }


    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type=type;
    }

    public String getValidateCode() {
        return validateCode;
    }

    public void setValidateCode(String validateCode) {
        this.validateCode=validateCode;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password=password;
    }

    public String getSecurityPwd() {
        return securityPwd;
    }

    public void setSecurityPwd(String securityPwd) {
        this.securityPwd=securityPwd;
    }

    @Override
    public String toString() {
        return "UserAuthValidateReq{" +
                "type=" + type +
                ", validateCode='" + validateCode + '\'' +
                ", password='" + password + '\'' +
                ", securityPwd='" + securityPwd + '\'' +
                '}';
    }

	public String getCertificateNo() {
		return certificateNo;
	}

	public void setCertificateNo(String certificateNo) {
		this.certificateNo = certificateNo;
	}
}
